package com.aoyama.springboot.demo1.controller;


import lombok.extern.slf4j.Slf4j;
import org.apache.coyote.Response;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

import javax.servlet.http.HttpServletRequest;
import java.time.LocalTime;

/**
 * 「server.tomcat.threads.min-spare」：
 * 最少的工作线程数，默认大小是10。该参数相当于长期工，如果并发请求的数量达不到10，就会依次使用这几个线程去处理请求。
 * <p>
 * 「server.tomcat.threads.max」：
 * 最多的工作线程数，默认大小是200。该参数相当于临时工，如果并发请求的数量在10到200之间，就会使用这些临时工线程进行处理。
 * <p>
 * 「server.tomcat.max-connections」：
 * 最大连接数，默认大小是8192。表示Tomcat可以处理的最大请求数量，超过8192的请求就会被放入到等待队列。
 * <p>
 * 「server.tomcat.accept-count」：
 * 等待队列的长度，默认大小是100。
 */
@RestController
@Slf4j
@RequestMapping("/test")
public class TestController {

    @RequestMapping("/hello")
    public String test(HttpServletRequest request) throws InterruptedException {
        log.info("time:{}", LocalTime.now());
        log.info("ip:{},线程:{}", request.getRemoteAddr(), Thread.currentThread().getName());
        Thread.sleep(500);
        return "Response.buildSuccess()";
//        return "Hello, Spring Boot 2!";
    }
}
